home *** CD-ROM | disk | FTP | other *** search
/ PC go! 2008 April / PCgo 2008-04 (DVD).iso / interface / contents / demoversionen_3846 / 13664 / files / Data1.cab / csharprrectbridge.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  2004-07-15  |  1.6 KB  |  58 lines

  1. //******************************************************************'
  2. //*                                                                *'
  3. //*                      TurboCAD for Windows                      *'
  4. //*                   Copyright (c) 1993 - 2004                    *'
  5. //*             International Microcomputer Software, Inc.         *'
  6. //*                            (IMSI)                              *'
  7. //*                      All rights reserved.                      *'
  8. //*                                                                *'
  9. //******************************************************************'
  10. // CSharpRRectBridge.cpp : Defines the entry point for the DLL application.
  11. //
  12.  
  13. #include "stdafx.h"
  14. #include "CSharpRRectBridge.h"
  15. BOOL APIENTRY DllMain( HANDLE hModule, 
  16.                        DWORD  ul_reason_for_call, 
  17.                        LPVOID lpReserved
  18.                      )
  19. {
  20. /*
  21.     switch (ul_reason_for_call)
  22.     {
  23.     case DLL_PROCESS_ATTACH:
  24.     case DLL_THREAD_ATTACH:
  25.     case DLL_THREAD_DETACH:
  26.     case DLL_PROCESS_DETACH:
  27.         break;
  28.     }
  29. */
  30.     return TRUE;
  31. }
  32. STDAPI DllRegisterServer(void)
  33. {
  34.     // registers object, typelib and all interfaces in typelib
  35.     return S_OK;
  36. }
  37.  
  38. long _stdcall GetServerProgIDs(VARIANT* pvarIDs)
  39. {
  40.     long nCnt = 1;
  41.     long nIndicies = 0;
  42.  
  43.     CComBSTR bstrProgID(_T("CSharpRoundRect.CSharpRoundRect"));
  44.     BSTR bstr = bstrProgID.Detach();
  45.  
  46.     SAFEARRAY* psa = SafeArrayCreateVector(VT_BSTR, 0, nCnt);
  47.     
  48.     HRESULT hr = SafeArrayPutElement(psa, &nIndicies, bstr);
  49.     _ASSERTE(SUCCEEDED(hr));
  50.  
  51.     bstrProgID.Detach();
  52.  
  53.     pvarIDs->vt = VT_ARRAY | VT_BSTR;
  54.     pvarIDs->parray = psa;
  55.  
  56.     return nCnt;
  57. }
  58.